//提交的方法(路径)
var method = '';
$(function(){
	$('#grid').datagrid({
		url : path_home+'/'+name+'/listByPage',
		striped : true,//隔行换色
		pagination : true,//分页工具栏
		pagePosition : 'bottom',
		pageSize : 10,
		pageNumber : 1,
		pageList : [ 10,20 ],
		columns : columns,//表格字段
		toolbar : [ {
			iconCls : 'icon-add',
			text : '添加'+text,
			handler : function() {
				//点击新增按钮时修改方法名称
				method = 'add';
				$('#editDlg').dialog('open');
				//清空表单
				$('#editForm').form('clear');
			}
		},
			{
				iconCls : 'icon-remove',
				text : '删除选中记录',
				handler : function() {
					deleteByids();
				}
			}

		]
	});
	$('#btnSearch').bind('click',function(){
		var formData = $('#searchForm').serializeJSON();
		$('#grid').datagrid('load',formData);
	});
	/* 编辑窗口 */
	$('#editDlg').dialog({
		title: '编辑窗口',
		width: 300,
		closed: true,
		modal: true
	});

});

/**
 * 格式化价格
 * @param val
 * @returns {*}
 */
function formatPrice(val) {
	if(typeof val === 'string'){
		if(isNaN(val)){
			return null;
		}
		// 价格转为整数
		const index = val.lastIndexOf(".");
		let p = "";
		if(index < 0){
			// 无小数
			p = val + "00";
		}else if(index === p.length - 2){
			// 1位小数
			p = val.replace("\.","") + "0";
		}else{
			// 2位小数
			p = val.replace("\.","")
		}
		return parseInt(p);
	}else if(typeof val === 'number'){
		if(val == null){
			return null;
		}
		const s = val + '';
		if(s.length === 0){
			return "0.00";
		}
		if(s.length === 1){
			return "0.0" + val;
		}
		if(s.length === 2){
			return "0." + val;
		}
		const i = s.indexOf(".");
		if(i < 0){
			return s.substring(0, s.length - 2) + "." + s.substring(s.length-2)
		}
		const num = s.substring(0,i) + s.substring(i+1);
		if(i === 1){
			// 1位整数
			return "0.0" + num;
		}
		if(i === 2){
			return "0." + num;
		}
		if( i > 2){
			return num.substring(0,i-2) + "." + num.substring(i-2)
		}
	}
}

/**
 * 提交表单
 * @returns
 */
function submitForm(){
	//判断是否通过校验
	var isValid = $("#editForm").form('validate');
	if (isValid) {
		//金额单位为分,所以乘以100
		var formData = $('#editForm').serializeJSON();
		formData['nafeSum']= parseInt(formData['nafeSum']*100)
		$.ajax({
			url:path_home+'/nafe/'+method,
			data:formData,
			dataType:'json',
			type:'post',
			success : function(data) {
				//返回的数据
				$.messager.show({
					title:'提示',
					msg:data.msg,
					timeout:3000,
					showType:'slide'
				});
				if(data.code>0){
					//成功则关闭对话框
					$('#editDlg').dialog('close');
					//重新加载表单
					$('#grid').datagrid('reload');
				}
			}
		});
	}else{
		$.messager.alert('提示','请输入正确的信息！','info');
		return ;
	}

}

/**
 * 删除选中记录
 */
function deleteByids(){
	let rows = $("#grid").datagrid("getSelections");
	if (rows.length==0){
		$.messager.alert('提示','请选择行！','info');
		return;
	}
	$.messager.confirm('确认对话框', '您确定要删除吗?', function(r){
		if (r){
			let ids = rows.map(row=>row.nafeId).join(",");
			$.ajax({
				url:path_home+'/'+name+'/deleteByIds',
				data:{'ids':ids},
				dataType:'json',
				type:'post',
				success:function(data){
					//返回的数据
					$.messager.show({
						title:'提示',
						msg:data.msg,
						timeout:3000,
						showType:'slide'
					});
					//重新加载
					$('#grid').datagrid('reload');
				}
			});
		}
	});

}

/* 删除方法 */
function del(uuid){
	$.messager.confirm('确认对话框', '您确定要删除吗?', function(r){
		if (r){
			$.ajax({
				url:path_home+'/'+name+'/delete',
				data:{'id':uuid},
				dataType:'json',
				type:'post',
				success:function(data){
					//返回的数据
					$.messager.show({
						title:'提示',
						msg:data.msg,
						timeout:3000,
						showType:'slide'
					});
					//重新加载
					$('#grid').datagrid('reload');
				}
			});
		}
	});
}
//修改部门
function edit(uuid){
	//清空表单
	$('#editForm').form('clear');
	//修改方法
	method = 'update';
	$('#editForm').form('load',path_home+'/'+name+'/get?id='+uuid);
	//加载完成执行事件
	$('#editForm').form({onLoadSuccess:open})
}
function open() {
	//数字框,默认为两位小数,so转为整数进行处理
	let money = parseInt($("#nafeSum").numberbox("getValue"));
	$("#nafeSum").numberbox("setValue",formatPrice(money));
	$('#editDlg').dialog('open');
}
